From: Felix Fietkau Date: Wed, 17 Sep 2025 10:27:00 +0000 (+0200) Subject: ucode: ubus: add shared global connection to uloop X-Git-Url: http://git.openwrt.org/%22https:/collectd.org//%22/%22https:/collectd.org/%22?a=commitdiff_plain;h=5b8f185e2783433ffcb63c01e337ac07f66e2878;p=openwrt%2Fopenwrt.git ucode: ubus: add shared global connection to uloop Fixes issues with registering objects Signed-off-by: Felix Fietkau --- diff --git a/package/utils/ucode/patches/100-ubus-add-connection-functions-to-global-scope.patch b/package/utils/ucode/patches/100-ubus-add-connection-functions-to-global-scope.patch index 33136449a7..4a232346ff 100644 --- a/package/utils/ucode/patches/100-ubus-add-connection-functions-to-global-scope.patch +++ b/package/utils/ucode/patches/100-ubus-add-connection-functions-to-global-scope.patch @@ -9,7 +9,7 @@ Signed-off-by: Felix Fietkau --- a/lib/ubus.c +++ b/lib/ubus.c -@@ -511,16 +511,40 @@ uc_ubus_objects_cb(struct ubus_context * +@@ -511,16 +511,42 @@ uc_ubus_objects_cb(struct ubus_context * static bool _conn_get(uc_vm_t *vm, uc_ubus_connection_t **conn) { @@ -36,6 +36,8 @@ Signed-off-by: Felix Fietkau + ucv_put(c->res); + err_return(UBUS_STATUS_UNKNOWN_ERROR, "Unable to connect to ubus socket"); + } ++ ++ ubus_add_uloop(&c->ctx); - if (c->ctx.sock.fd < 0) - err_return(UBUS_STATUS_CONNECTION_FAILED, "Connection is closed"); @@ -57,7 +59,7 @@ Signed-off-by: Felix Fietkau *conn = c; ok_return(true); -@@ -2606,6 +2630,7 @@ static void free_request(void *ud) { +@@ -2606,6 +2632,7 @@ static void free_request(void *ud) { void uc_module_init(uc_vm_t *vm, uc_value_t *scope) { uc_function_list_register(scope, global_fns);